home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-05-21 | 68.8 KB | 1,903 lines |
- -*- Indented-Text -*-
-
- Frequently Asked Questions and Answers for Mule.
- 1994/8/30
-
- ----------------------------------------------------------------------
-
- This FAQ list was made to summarise some frequently asked questions
- and their answers in a convenient form. The structure of this FAQ
- list has drastically changed since the last version. For the detail
- of the new structure, see the entry of `How to read this FAQ and its
- structure'.
-
- We believe that the contents are fairly correct, but please let us
- know if you find any mistakes. New information is always welcome.
-
- To get the latest FAQ, see A-12.
-
- Many people gave us advice in making this list. We would like to
- thank those who have contributed.
-
- --
- Takahiro Maebashi <maebashi@mcs.meitetsu.co.jp>
- (translated by TAKAHASHI Naoto <ntakahas@etl.go.jp>)
-
- ----------------------------------------------------------------------
-
- WARNING!!
- This FAQ list contains Japanese, Chinese and Latin-1 characters. If
- you read this list on a terminal which is not capable of displaying
- those characters, your terminal might be set in a strange state.
- ----------------------------------------------------------------------
-
- If you are viewing this text in a Mule Buffer, you can type "M-2 C-x
- $" to get an overview of just the questions. Then, when you want to
- look at the text of the answers, just type "C-x $".
-
- To search for a question numbered X-XX, type "M-C-s ^X-XX:", followed
- by a C-r if that doesn't work, then type ESC to end the search.
-
- This Mule FAQ is divided into two parts:
-
- Part 1: Questions common to all languages
- Part 2: Questions specific to each language
-
- Each part consists of several sections. Questions in Part 1 are
- grouped by their fields, and questions in Part 2 are grouped by
- languages. You may find almost the same questions in different
- sections, but this is for the convenience of readers.
-
- ----------------------------------------------------------------------
-
- FAQ Part 1: Questions common to all languages
-
- GENERAL QUESTIONS
-
- A-1: What is Mule?
-
- Mule is a multi-lingual enhancement of GNU Emacs. Mule Ver.1 was
- based on GNU Emacs Ver.18 and Mule Ver.2 is based on GNU Emacs
- Ver.19. Mule Ver.1 will not be supported anymore.
-
- Mule has the following features:
- * It can handle not only ASCII characters (7 bit) and ISO Latin-1
- characters (8 bit), but also 16 bit characters like Japanese,
- Chinese, and Korean. Furthermore Mule can have a mixture of
- languages in a single buffer.
- * You can set different coding systems for file input/output,
- keyboard input, and inter-process communication.
- * When not in the multi-lingual mode, it behaves almost exactly like GNU
- Emacs.
-
- A-2: How can I get Mule?
-
- Mule is available via anonymous FTP from:
-
- etlport.etl.go.jp [192.31.197.99]: /pub/mule
- ftp.mei.co.jp [132.182.49.2]: /public/free/gnu/emacs/Mule
- ftp.iij.ad.jp [192.244.176.50]: /pub/misc/mule
- sh.wide.ad.jp [133.4.11.11]: /JAPAN/mule
- ftp.funet.fi [128.214.6.100]: /pub/gnu/emacs/mule
-
- Please use one of the last three sites unless you are in Japan. It
- should be better to use ftp.funet.fi for European sites.
-
- Both the complete tar file of Mule (mule-2.0.tar.gz) and the diff
- file to GNU Emacs 19.25 (diff-19.25-2.0.gz) are available. Please
- take the diff file if you already have GNU Emacs. If you find patch
- files there (patch-2.0-*.gz), get them too and apply the patches.
- Various fonts and ELISP libraries are also available from the same
- sites.
-
- See $MULE/README.Mule for further details.
-
- A-3: What is the latest version of Mule?
-
- The current version is 2.2 (WAKAMURASAKI), and is based on
- GNU Emacs 19.28.
-
- A-4: Will Mule be integrated into GNU Emacs in the future?
-
- We have just started the work of merging Mule to GNU Emacs.
-
- A-5: Are there any plans to introduce the features of Mule to Epoch
- (or Nepoch)?
-
- Mule Ver.2 (actually GNU Emacs 19) can make a independent frame for
- each buffer, and can draw coloured strings.
-
- A-6: Are there any plans to introduce the features of Mule to Demacs?
-
- Mule Ver.1.x contains Demacs. Read the install manual
- "INSTALL.dos".
-
- A-7: What are the advantages of using Mule Ver.2 instead of Mule Ver.1?
-
- To summarise, it is possible to use the new features added to GNU
- Emacs 19. There are so many new features and we cannot list them
- here, but the multi-frame functions a la Epoch and face functions
- (see F-5 below) are examples.
-
- A-8: Are there any mailing lists for Mule?
-
- There are two lists for discussion in English:
-
- mule@etl.go.jp
- Main language is English.
- mule-vn@etl.go.jp
- To discuss handling of Vietnamese. Main language is English.
-
- The following is for various pre-release tests:
-
- mule-jp@etl.go.jp
- Main language is Japanese.
-
- To discuss general topics in Japanese, please use the newsgroup
- fj.editor.mule.
-
- If you want to join these lists, contact the address
- mule-request@etl.go.jp. Note that mule-jp-request does not exist.
-
- A-9: Where should I send bug-reports of Mule?
-
- If you write bug-reports and/or propositions for improvement in
- Japanese, post them to fj.editor.mule. If you do not have access to
- this newsgroup, send them to mule@etl.go.jp in English.
-
- A-10: Does Mule have manuals written in Japanese/English/Chinese/
- Korean/etc.?
-
- There are five kinds of manuals:
-
- * on-line manual,
- * texinfo manual,
- * FAQ,
- * tutorial, and
- * various documents under the "doc" directory.
-
- The current version of Mule is 2.0, but some manuals have not been
- rewritten since Ver.1 (sorry).
-
- * on-line manual
-
- An on-line manual written in English is included. Usually you can
- read it with the man command. If your sys-admin did not make it
- readable, you will have to copy $MULE/etc/mule.1 to your man
- directory.
-
- * texinfo manual
-
- A texinfo manual, which explains the functions and terminology of Mule,
- is also available. You will find the source in texinfo format
- under $MULE/man and the formatted text under $MULE/info.
-
- * FAQ
-
- This is what you are reading now. The following versions are
- available in $MULE/etc:
-
- FAQ-Mule English version
- FAQ-Mule.jp Japanese version
- FAQ-Mule.kr Korean version
- FAQ-Mule.cn Chinese version
-
- * tutorial
-
- The tutorial is available in Japanese and Korean. When you type
- C-h T (M-x help-with-tutorial-for-mule), Mule asks you in what
- language you want the tutorial. (Hitting space bar shows the list
- of available languages.)
-
- * documents under the `doc' directory
-
- There are some sample texts and documentation of functions of Mule in
- $MULE/doc. Most of the documents that were there in Ver.1 have
- been texinfonised. $MULE/doc/viet contains documents written in
- Vietnamese.
-
- A-11: What does the name "Mule" stand for?
-
- Quoted from UNIX dictionary :-)
-
- [Mule] (UNIX command) [mju:l]
- Stands for "MUlti-Lingual Enhancement to GNU Emacs". Corresponding
- to the animal series of GNU, and also to the convention of giving
- an antonym to its name, like gawk. (cf. Demacs, Emacs, gawk,
- Nemacs)
-
- Hironobu SUZUKI <hironobu@sra.co.jp> first suggested this name.
-
- A-12: Where can I get the latest Mule FAQ list?
-
- There are four versions of Mule FAQ, i.e. in English, in Japanese,
- in Korean and in Chinese. In the distribution set, they are named:
-
- FAQ-Mule English version
- FAQ-Mule.jp Japanese version
- FAQ-Mule.kr Korean version
- FAQ-Mule.cn Chinese version.
-
- The original is the Japanese version. The others are
- translations and may or may not be slightly obsolete.
-
- You can get Mule FAQ from:
-
- * network news. Mule FAQ is posted to fj.editor.mule at irregular
- intervals.
-
- * anonymous FTP sites. It is available via anonymous FTP from the
- following sites.
-
- etlport.etl.go.jp: /pub/mule/READMEDIR
- sh.wide.ad.jp: /JAPAN/mule/READMEDIR
-
- * the distribution set of Mule. Each distribution set contains the
- latest FAQ (at that time) as etc/FAQ-Mule{,.jp,.kr}.
-
- A-13: What functions are not implemented in Mule 2.0?
-
- The following functions are not available in Mule 2.0. Wait for the
- next version:
-
- o Multi-lingual version of lisp/picture.el and lisp/rect.el
- o Multi-lingual version of XMENU
- o Displaying on Sun console
-
-
- BUILDING AND INSTALLING
-
- B-1: What options does configure accept?
-
- You can get the list by `configure --help'.
-
- B-2: How can I build Mule for X Window System under SunOS 4.1.x?
-
- To make Mule under SunOS 4.1.x, static linking is necessary. If there
- are no libraries for static linking, you have to create libX11.a by
- adding
-
- #define ForceNormalLib YES
-
- to the site.def file when you build X.
-
- B-3: How can I use Wnn or Canna in Mule?
-
- Specify --wnn or --canna to configure. If the libraries are not in
- the standard directories, you may need to specify --wnn-include=XXXX,
- too.
-
- B-4: During the building of Mule, a message "Pure Lisp storage
- exhausted" was displayed, and the compilation stopped.
-
- Ken'ichi HANDA <handa@etl.go.jp> writes:
-
- This happens when the value of PURESIZE in puresize.h is too
- small. Some systems seem to require a larger value. Loading many
- language specific files (e.g. japanese.el, chinese.el) in
- site-init.el requires a larger value, too. First, try again with
- the value doubled. If that works, you can adjust PURESIZE to a
- value a little greater than the value displayed in the message
- "Pre Bytes Used XXXXX" (which is displayed when temacs has loaded
- mule-init.el). After that you have to remake Mule with this
- adjusted PURESIZE value.
-
- B-5: When I was building Mule the compilation stopped with a message
- saying "Undefined Symbol: __des_crypt". What can I do?
-
- Masato Minda <minmin@astec.co.jp> writes:
-
- I think this happens when you use static link under SunOS with
- JLE1.1.1.
-
- Solutions:
- Apply the patch(es) for JLE (I forgot the patch ID).
- Use JLE1.1.1 rev B or later.
- Throw away JLE :-)
-
- I think making an empty _des_crypt function and linking it
- together might work, though I've never tried it.
-
- B-6: Why does Mule, which is compiled with GCC, add a ^M at the end of
- each line in shell mode?
-
- Ishikawa Ichiro <ichiro@ccsr.u-tokyo.ac.jp> writes:
-
- I have had the same problem in Emacs 19. (At that time Mule did
- not work at all if compiled with gcc.) The cause was incomplete
- installation of gcc. (I used the JLE version of sed.)
-
- Sed in JLE has bug and cannot install the header files (fixincludes)
- well. Use sed of GNU instead.
-
- B-7: I succeeded in compiling Mule, but I cannot input any language except
- English.
-
- If you want to use foreign languages in Mule, you have to load the
- language specific files by specifying them in the site-init.el file.
- By default there is no site-init.el file, and this means that you
- can input only English.
-
- If you want to use Japanese and Chinese, include the following lines
- in the lisp/site-init.el file when you build Mule:
- (load "japanese")
- (load "chinese")
-
- When the necessary files have not been loaded, you can load them by
- hand, for example, as follows:
- M-x load-library RET japanese RET
-
- The lastly loaded language will be the default. To change this,
- execute
- M-x its:select-mode
- to specify the mode. Completion of the mode name is available.
-
- Loading too many language specific files may cause the "Pure Lisp
- storage exhausted" error during the compile. In this case, refer
- B-4.
-
- B-8: I want to save the result of configure to compile on other
- machines.
-
- Rename config.status to save the result. Or, you can compile the
- source in a different directory.
-
- B-9: I configured on the first machine. Then I configured on the
- second machine. I want to make it on the first machine again. Do I
- have to rerun configure?
-
- No. All you have to do is executing the previously saved
- config.status file.
-
- B-10: How can I compile in a directory other than the source directory?
-
- Specify the --srcdir=(_the_name_of_source_directory_) option to
- configure. In this case, if you have ever run configure in the
- source directory, you must execute `make clean' first in that
- directory.
-
- B-11: I have to rerun configure for some reason. Do I have to type
- all command line options again?
-
- No. All you have to do is `./config.status --recheck'. As
- `config.status' is a sh script, you can edit this file directly to
- modify the arguments. You can also give the argument to configure
- by using the cut & past function of terminal emulator.
-
- B-12: I tried to run configure, but the options are not recognised at
- all.
-
- Are you using the JLE OS on Sun? It seems that JLE has problems
- because of bugs and differences of features in the commands and
- libraries. They say that the installation of GCC may fail under
- JLE.
-
- In the current situation, `tr - _' does not work well. The
- workaround is to change `tr - _' in configure to `tr \- _', or, if
- you are using csh, execute
- setenv LANG C
- or
- unsetenv LANG
-
- B-13: Making Mule under Solaris2 + X11R6 dumps core.
-
- Mule 2.0 and GNU Emacs 19.25 cannot cope with multi-threading. This
- means that you have to either:
-
- 1) include
- #define ThreadedX NO
- in site.def when you build X11R6. The resulting X11R6 does not
- cope with multi-thread.
-
- or
-
- 2) link with libX11.a, not with libX11so.6. Then it will not be
- linked with libthread.so.1, either.
-
-
- HANDLING FOREIGN LANGUAGES
-
- C-1: What languages are supported in Mule?
-
- Except from $MULE/README.Mule:
-
- 0. English
-
- Just type it. :-)
-
- 1. Japanese
-
- We strongly recommend you to install Wnn4.108 or later. (Some
- machine requires Wnn4.109p1, not Wnn4.108.) The `TAMAGO (EGG)'
- system, which is bundled to Mule, communicates with Wnn's jserver
- to provide a very convenient Japanese input method. For the usage
- of `TAMAGO', see $MULE/info/egg.
-
- Mule runs as a client of the X Window System, or runs under a Japanese
- terminal (including terminal emulators like kterm and exterm). In
- the latter case, you can use the Japanese input system that is
- provided by the terminal. Other input systems are:
- * sj3-egg, CANNA bundled with Mule
- * SKK, boiled-egg included in the contrib directory
-
- 2. Chinese
- We strongly recommend you to install Wnn4.108 or later. (Some
- machines require Wnn4.109p1, not Wnn4.108.) The `TAMAGO (EGG)'
- system, which is bundled to Mule, communicates with cWnn's cserver
- to provide a very convenient Chinese (GB) input method. For
- the usage of `TAMAGO', see $MULE/info/egg.
-
- Mule runs as a client of the X Window System, or runs under a Chinese
- terminal (including terminal emulators like cxterm and exterm).
- In the latter case, you can use the Chinese input system that is
- provided by the terminal.
-
- Furthermore, the QUAIL system (bundled to Mule) provides the
- following input methods:
- GB: PINYIN, PINYIN_with_TONE, CCDOSPY, SW
- Big5: PINYIN, ETZY, ZOZY
- For the usage of this system, see $MULE/info/quail.
-
- Readers of alt.chinese.text or alt.chinese.text.big5 will find it
- very convenient to use GNUS (a newsreader written in emacs lisp)
- with gnusutil.el (bundled to Mule Ver.2). The program gnusutil
- automatically converts Hz/zW encoding and BIG5 from/to the
- internal code of Mule.
-
- 3. Korean
-
- For hangul input, quail/hangul.el is provided. See `info/quail'
- for the usage. Mule runs as a client of the X Window System, or runs
- under a hangul terminal (including terminal emulators like
- exterm).
-
- 4. European languages
-
- The QUAIL system provides many input methods for European
- languages. Currently supported characters are:
- Latin1, Latin2,.. Latin5, Greek (ISO8859-7),
- Hebrew (ISO8859-8), Cyrillic (ISO8859-5).
- See `$MULE/info/quail' for the usage. Languages that write from
- right to left (Hebrew, for example) are supported, too. See
- `$MULE/info/R2L'.
-
- 5. Thai
-
- Thai is supported based on the TIS620 character set. The QUAIL
- system (bundled to Mule) provides a Thai input method, too. See
- `$MULE/info/quail' for the usage. The name of the quail package
- for Thai is `thai'. A free font (12x29 pixels) is included in the
- `fonts/ETL.tar.gz' file. You should widen Mule's line spaces
- with `-lsp 5+' option if you use this font with a 12x24 ASCII
- font.
-
- 6. Vietnamese
-
- Vietnamese support is based on the two-table-VISCII method,
- which divides the code table of VISCII into upper and lower
- case. Mule can read and write VISCII, VIQR and VSCII. Use the
- QUAIL system (bundled to Mule) for Vietnamese input. See
- `$MULE/info/quail' for the usage of this system. The name of the
- quail package for Vietnamese is `viet'. You can use both VISCII
- font and VSCII font under the X Window System. A free VISCII font is
- included in `fonts/ETL.tar.gz', too. It was designed to be used
- with the other ETL fonts.
-
- C-2: Some languages are written from right to left. Does Mule
- support such languages?
-
- Hebrew and Arabic are supported in this version. quail/hebrew.el can
- be used to input Hebrew texts. See also the documents of
- highlight-reverse-direction, r2l-double-cursor, etc. We are also
- planning to support Persian, etc. in the future.
-
- C-3: What kinds of coding systems are related to Mule? And when are
- they used?
-
- Mule supports the following coding systems:
-
- * the internal code used in Mule's buffers.
- * MS kanji code or SHIFT-JIS (Japanese only)
- * a subset of ISO 2022 (including JIS [JUNET], EUC, CTEXT)
- * Big5 (Chinese only)
-
- You can specify any combination of these coding systems for file
- input/output, key input, screen display, and interprocess
- communication.
-
- C-4: Why does the buffer size displayed in *Buffer List* differ so
- much from the actual file size?
-
- Mule allocates a unique "leading character" to each coding system.
- The internal representation of a character other than an ASCII
- character begins with a leading character. Therefore inside of
- Mule, 8 bit characters like Latin-1 are represented in 2 bytes, and
- 16 bit characters like kanji are represented in 3 bytes. When you
- save the contents of a buffer with the internal representation, the
- size of the buffer and the file will be the same. If another
- encoding is used for file output, they will be different.
-
- C-5: I set (setq keyboard-coding-system *euc-japan*), but it does not
- work.
-
- Do not use `setq' to bind a value to `keyboard-coding-system'. Use
- the function `set-keyboard-coding-system' instead. This comment
- also applies to `display-coding-system', `file-coding-system', etc.
-
- C-6: Why doesn't `set-keyboard-coding-system' accept *autoconv*,
- *big5-hku*, *big5-eten* and *internal*?
-
- This is a feature.
-
- C-7: I want to use EUC for displaying Japanese, Chinese, Korean, EC,
- etc. simultaneously.
-
- This is impossible, because EUC for each language is the same
- coding system. Use *junet* or *ctext* to display multi-lingual texts.
-
- C-8: Where can I find documentation for the coding system used in Mule?
-
- The coding system is ISO 2022 (or JIS X0202 in the case of JIS).
- You will find a brief explanation in the texinfo manuals and in
- `$MULE/info/ISO2022'.
-
- C-9: How can I input characters other than ASCII in isearch?
-
- Load `isearch-ext.el' first, then you will be able to input
- characters other than ASCII in isearch (incremental search). You
- can invoke `TAMAGO' with `C-\' and `quail' with `C-]' to input
- foreign languages.
-
- C-10: Where can I get various fonts for various languages?
-
- You can get them via anonymous FTP from the following sites:
-
- etlport.etl.go.jp: /pub/mule/fonts
- sh.wide.ad.jp: /JAPAN/mule/fonts
-
- You will find the following fonts there:
-
- ./Chinese/ or Chinese.tar.gz
- gb16fs.bdf -- 16x16 pixels GB font
- gb24st.bdf -- 24x24 pixels GB font
- taipei16.bdf -- 16x16 pixels BIG5 (ETen) font
- taipei24.bdf -- 24x24 pixels BIG5 (ETen) font
-
- ./Japanese/ or Japanese.tar.gz
- k14.bdf -- 14x14 pixels JISX0208.1983 font
- k16.bdf -- 16x16 pixels JISX0208.1990 font
- jiskan16.bdf -- 16x16 pixels JISX0208.1983 font
- jiskan24.bdf -- 24x24 pixels JISX0208.1983 font
- min-1-16.bdf -- 16x16 pixels JISX0212.1990 (HojoKanji) font
- min-1-24.bdf -- 24x24 pixels JISX0212.1990 (HojoKanji) font
- 8x16rk.bdf -- 8x16 pixels JISX0201.1976 (Kana) font
- 12x24rk.bdf -- 12x24 pixels JISX0201.1976 (Kana) font
-
- ./Korean/ or Korean.tar.gz
- hanglm16.bdf -- 16x16 pixels KSC5601.1987 font
- hanglm24.bdf -- 24x24 pixels KSC5601.1987 font
-
- ./ETL/ or ETL.tar.gz
- etl{14,16,24}-latin1.bdf -- ISO8859-1 (Latin-1) font
- etl{14,16,24}-latin2.bdf -- ISO8859-2 (Latin-2) font
- etl{14,16,24}-latin3.bdf -- ISO8859-3 (Latin-3) font
- etl{14,16,24}-latin4.bdf -- ISO8859-4 (Latin-4) font
- etl{14,16,24}-cyrillic.bdf -- ISO8859-5 (Cyrillic) font
- etl{14,16,24}-greek.bdf -- ISO8859-7 (Greek) font
- etl{14,16,24}-hebrew.bdf -- ISO8859-8 (Hebrew) font
- etl{14,16,24}-latin5.bdf -- ISO8859-9 (Latin-5) font
- etl{14,16,24}-swedish.bdf -- SEN850200 (Swedish) font
- etl{14,16,24}-ipa.bdf -- IPA font
- etl{14,16,24}-sisheng.bdf -- SiSheng (Chinese Radical) font
- etl{16,24}-viscii.bdf -- VISCII 1.1 (Vietnamese) font
- etl{14,24}-koi.bdf -- KOI (Cyrillic) font
- etl{16,24}-arabic{0,1,2}.bdf -- Arabic font
- etl24-thai.bdf -- TIS620 (Thai) font
-
- X11R6 also contains most of the JIS, KSC, GB fonts.
-
- Besides the above Japanese.tar.gz, another JISX0212.1990 font was
- posted to fj.sources:
-
- From: yasuoka@kudpc.kyoto-u.ac.jp (Koichi Yasuoka)
- Newsgroups: fj.sources
- Subject: 16x16 JIS Supplementary Kanji Font (1/6)
- Date: 28 Jul 1994 00:06:12 +0900
- Organization: Data Processing Center, Kyoto University, Kyoto, Japan.
- Message-ID: <315t54$et5@kudpc.kudpc.kyoto-u.ac.jp>
-
- This posting was followed by some patches, so you'd better apply them.
-
- C-11: Some foreign language characters are different from what
- quail-help displays on the screen. Is this a known bug?
-
- Make sure that *quail-keyboard-translate-table* is correctly set.
-
- If this variable is left unchanged, Mule assumes your keyboard
- layout is same as vt100 and displays the layout for vt100.
- Especially if you are using a JIS keyboard, you have to put the
- following in your .emacs:
-
- (setq *quail-keyboard-translate-table*
- *quail-keyboard-translate-table-jis*)
-
- See doc/keyboard-translation.text for more information.
-
- C-12: How can I get hardcopy of texts made with Mule?
-
- A program called m2ps is included in the directory `lis-src' of
- Mule. It converts multi-lingual files into PostScript format.
- Note that m2ps accepts only *internal* encoding of Mule.
-
- m2ps uses X's BDF files as fonts. Characters are sent to printer
- as bitmaps, so you can get hardcopy of multi-language texts even if
- your printer does not support multi-lingual fonts. For further
- information, see the on-line manual (m2ps.1).
-
- C-13: Mule fails to handle filenames which contain two byte characters
- like Japanese, Chinese, or Korean.
-
- You must specify `--mcpath' to `configure' when you compile Mule.
- You also have to specify what coding system will be used in
- filenames. Adding the following lines in `site-init.el' may
- help. (Note that *autoconv* cannot be specified).
-
- ;;; example: To use Korean EUC for filenames
- (if (fboundp 'set-pathname-coding-system)
- (set-pathname-coding-system *euc-korea*))
-
- C-14: Mule wrongly determines the eol-type when it reads a file in.
-
- The current version of Mule guesses the eol-type when it first
- encounters a CR/LF/CR+LF. This means if a CR is placed at the end
- of a `LF terminated' line, that file is regarded as ....*dos.
- Similarly, if a CR is placed at the end of a `CR+LF terminated'
- line, that file is regarded as ....*mac. You should explicitly
- specify the eol-type by `\C-u\C-x\C-f (\C-u M-x find-file)' when you
- read such ambiguous files.
-
- There are three possible reasons when the eol-type is wrongly
- determined:
-
- 1) The file contains more than one coding-system / eol-type.
- 2) Some sequences are unfortunately placed at the boundary of
- reading blocks.
- 3) The priority of coding-system is wrong.
-
-
- PERSONAL ENVIRONMENT
-
- D-1: I do not want a new line inserted even if I execute `next-line'
- at the end of a buffer.
-
- (setq next-line-add-newlines nil) does what you want.
-
- D-2: How can I stop Mule from beeping and displaying
- `beginning-of-buffer !' when I execute `previous-line' at the
- beginning of a buffer?
-
- Include the following lines in your .emacs file. (Note that this
- works only in Emacs 19.26 or later.)
-
- (defun previous-line (arg)
- (interactive "p")
- (condition-case nil
- (line-move (- arg))
- (beginning-of-buffer)))
-
- D-3: I don't want the menu-bar and the scroll-bar.
-
- You can make them invisible by (menu-bar-mode 0) and
- (scroll-bar-mode -1), respectively. To make the scroll bar only of
- the current frame invisible, execute (toggle-scroll-bar -1).
-
- D-4: I cannot set a hook by (setq xxx-hook yyy).
-
- Maybe other hooks are overriding it. To avoid such a trouble, use
- `add-hook' instead of `setq' when you set a hook.
-
- (example)
- (add-hook 'c-mode-hook '(lambda () (setq tab-width 4)))
-
- By default, `add-hook' appends the new function at the top of the
- hook. However, if you specify a `t` as the third argument to
- `add-hook', it will be added at the end of the hook.
-
- D-5: Is it possible to use the same .emacs file for Mule-1.x and
- Mule-2.x?
-
- Sometimes this causes a trouble because of the difference of the
- versions of the original emacs. To make a commonly usable .emacs
- file, adopt the following structure:
-
- (if (eq (string-to-int emacs-version) 18)
- (_programs_for_Mule-1.x_))
- (if (eq (string-to-int emacs-version) 19)
- (_programs_for_Mule-2.x_))
-
- D-6: Why does the BS key execute the same command as the DEL key when
- I use Mule under the X Window System? How can I change it as if I am
- using it on a terminal?
-
- On terminals, the BS key generates ^H and the DEL key generates ^?.
- This means that Mule cannot distinguish BS from ^H nor DEL from ^?.
- Under X, however, these keys are distinguishable. So, taking account
- of the fact that the BS key is often used for what the DEL key does,
- the BS key executes what the DEL key does.
-
- If you prefer the behaviour on terminals, include the following
- lines in your .emacs file:
-
- (if (eq window-system 'x)
- (progn
- (define-key function-key-map [backspace] [8])
- (put 'backspace 'ascii-character 8)))
-
- The `term/bobcat' file, which exchanges the two keys on terminals,
- does not under X. Include the following code in you .emacs file if
- you want to exchange the keys:
-
- (cond ((eq window-system 'x)
- (define-key function-key-map [delete] [8])
- (put 'delete 'ascii-character 8))
- ((null window-system)
- (load "term/bobcat")))
-
-
- MAIL & NEWS
-
- E-1: When I am writing mail or news, typing C-c C-y quotes original
- text with " " at the beginning of line. How can I change this
- citation mark to "> " ?
-
- Use Supercite. Supercite has many functions and you can customise
- your own citation mark. See E-2 through E-4 for detail.
-
- E-2: How can I include the name of the sender in a citation mark?
-
- The following configuration, by ksakai@mtl.t.u-tokyo.ac.jp, should
- work. Some lines may be omitted according to your configuration.
- You can change the last three lines according to your taste. (See
- the documents of Supercite for detail.)
-
- ;; sc
- (autoload 'sc-cite-original "supercite" "Supercite 3.1" t)
- (autoload 'sc-submit-bug-report "supercite" "Supercite 3.1" t)
- (autoload 'sc-perform-overloads "sc-oloads" "Supercite 3.1" t)
- (setq mail-citation-hook 'sc-cite-original)
- (setq mail-yank-hooks 'sc-cite-original) ; for all but MH-E
- (setq mh-yank-hooks 'sc-cite-original) ; for MH-E (3.7 or later)
- (setq news-reply-mode-hook 'sc-perform-overloads) ; for RNEWS,GNEWS,GNUS
- (setq mail-setup-hook 'sc-perform-overloads) ; for RMAIL,PCMAIL,GNUS
- (setq gnews-ready-hook 'sc-perform-overloads) ; for GNEWS
-
- (setq sc-electric-references-p nil)
- (setq sc-preferred-header-style 1)
- (setq sc-citation-leader "")
-
- E-3: How can I change the citation mark to "> " with Supercite?
-
- Add the following line in addition to what has been done in E-2:
-
- (setq sc-nested-citation-p t)
-
- Note that if you add the above line, you cannot include the senders'
- names anymore.
-
- E-4: How can I customise citation mark with Supercite?
-
- Use sc-register-2.3.1 written by yoichi@s5g.ksp.fujixerox.co.jp.
- You can use it by installing sc-register and adding the following
- configuration:
-
- (setq sc-load-hook '(lambda () (require 'sc-register)))
- (setq sc-preferred-attribution 'registeredname)
-
- You will find it convenient when `selection by completion' is
- tiresome, e.g., when you include Japanese characters.
-
- Note that sc-register does not work with Supercite 3.0 or later. It
- is said that sc-register will be integrated to Supercite in future.
-
- E-5: I moved from Supercite 2.3 from 3.1, then it automatically does
- `fill-paragraph' whenever I use `sc-yank-original'.
-
- This is a bad feature, isn't it? We do not see the reason why
- backward compatibility is not kept by default. Anyway, adding the
- following line in your .emacs file suppresses `fill-paragraph'.
-
- E-6: RMAIL does not work.
-
- Takeshi Shigehara <takeki@nalgo.snet.or.jp> writes:
-
- On NEW EWS4800 EWX-UX/V(Rel 4.2), include the following lines in
- `site-init.el'. (It is possible that all SVR4 machines require
- the same lines.)
-
- (setq rmail-spool-directory "/var/mail/")
- (setq sendmail-program "/usr/ucblib/sendmail")
- (setq manual-program "/usr/ucb/man")
-
- In addition to that, make the directory `/var/mail' readable and
- writable by all users:
-
- chmod 777 /var/mail
-
- E-7: I am using GNUS. When I post to, say, fj.test, the default value
- of distribution is not set to fj.
-
- That is a new feature. The default is the first element of the list
- `gnus-local-distributions', which holds the candidates of
- completion.
-
-
- Display
-
- F-1: Japanese (Chinese, Korean) text are not displayed in Mule under
- the X Window System.
-
- You must set the resource like the following. Do not forget to
- include the specification of `FontSet-xxx' that is set as
- `FontSetList'.
-
- ! Mule-2.0
- *FontSetList: 16,24
- *FontSet-16:\
- -*-fixed-medium-r-*--16-*-iso8859-1,\
- -*-fixed-medium-r-*--16-*-iso8859-2,\
- -*-fixed-medium-r-*--16-*-iso8859-3,\
- -*-fixed-medium-r-*--16-*-iso8859-4,\
- -*-fixed-medium-r-*--16-*-iso8859-5,\
- -*-fixed-medium-r-*--16-*-iso8859-7,\
- -*-fixed-medium-r-*--16-*-iso8859-8,\
- -*-fixed-medium-r-*--16-*-iso8859-9,\
- -*-fixed-medium-r-*--16-*-viscii1.1-1,\
- -*-fixed-medium-r-*--16-*-mulearabic-0,\
- -*-fixed-medium-r-*--16-*-mulearabic-1,\
- -*-fixed-medium-r-*--16-*-mulearabic-2,\
- -*-fixed-medium-r-*--16-*-muleipa-1,\
- -*-fixed-medium-r-*--16-*-jisx0201.1976-*,\
- -*-fixed-medium-r-*--16-*-jisx0208.1983-*,\
- -*-fixed-medium-r-*--16-*-jisx0212.1990-*,\
- -*-medium-r-*--16-*-gb2312.1980-*,\
- -*-mincho-medium-r-*--16-*-ksc5601.1987-*,\
- -*-fixed-medium-r-*--16-*-tis620.2529-1
- *FontSet-24:\
- -*-fixed-medium-r-*--24-*-iso8859-1,\
- -*-fixed-medium-r-*--24-*-iso8859-2,\
- -*-fixed-medium-r-*--24-*-iso8859-3,\
- -*-fixed-medium-r-*--24-*-iso8859-4,\
- -*-fixed-medium-r-*--24-*-iso8859-5,\
- -*-fixed-medium-r-*--24-*-iso8859-7,\
- -*-fixed-medium-r-*--24-*-iso8859-8,\
- -*-fixed-medium-r-*--24-*-iso8859-9,\
- -*-fixed-medium-r-*--24-*-viscii1.1-1,\
- -*-fixed-medium-r-*--24-*-mulearabic-0,\
- -*-fixed-medium-r-*--24-*-mulearabic-1,\
- -*-fixed-medium-r-*--24-*-mulearabic-2,\
- -*-fixed-medium-r-*--24-*-muleipa-1,\
- -*-fixed-medium-r-*--24-*-jisx0201.1976-*,\
- -*-fixed-medium-r-*--24-*-jisx0208.1983-*,\
- -*-fixed-medium-r-*--24-*-jisx0212.1990-*,\
- -*-medium-r-*--24-*-gb2312.1980-*,\
- -*-mincho-medium-r-*--24-*-ksc5601.1987-*,\
- -*-fixed-medium-r-*--24-*-tis620.2529-1
-
- F-2: Why does Mule appear with dirty fonts when I use it under X?
-
- TAKAHASHI Naoto <ntakahas@etl.go.jp> and Ken'ichi Handa
- <handa@etl.go.jp> write:
-
- Mule creates a window whose size is based on the width of the
- ASCII font. If the width of the ASCII font and that of the other
- fonts do not match, then some characters will not be displayed
- completely. The width of Japanese, Chinese, and Korean fonts must
- be exactly twice as wide as that of ASCII fonts; the width of
- other fonts must be the same as that of ASCII fonts.
-
- If you see dirty characters on your screen, it may be caused by
- the auto-scaling function of X. If an X server receives a request
- of a font which does not exist but whose specification is LFD
- compliant, it tries to expand of reduce what is available. For
- example, a specification
- "-*-fixed-medium-r-*--*-*-*-*-*-*-jisx0208.1983-*"
- is LFD compliant, so it may be resized. On the other hand, a
- specification in mule-init.el:
- "-*-fixed-medium-r-*--*-*-jisx0208.1983-*"
- is not LFD compliant (the number of columns are less than it
- should to be), so auto-scaling is inhibited. (What is described
- here is what we have learned from experience, not from X documentation.)
-
- F-3: How can I set the default font size to 14 pixels under X?
-
- The first FontSet in the `Emacs*FontSetList:' field in your X
- resource will be used as default. So if you want the default to be
- 14 pixels, put `14' as the first element of `Emacs*FontSetList:', and
- include the specification of FontSet-14. See F-1 for examples of
- FontSet specification.
-
- Note that `emacs*FontSetList:' or `Mule*FontSetList:' are invalid
- for resource specification. SANETO Takanori <sanewo@cep.sony.co.jp>
- writes:
-
- You can think of `Emacs' as the class name and `mule' as the
- instance name.
-
- `Emacs' is used for all Emacs family programs: mule, nemacs,
- epoch, nepoch, and of course the original GNU emacs.
-
- On the other hand, the instance name is used to distinguish each
- entities. If you rename mule to hoge, the specification
- `Emacs*...' still has effect but `mule*...' is of no effect. When
- both specification by instance name and specification by class
- name are valid, the instance name has priority.
-
- You can explicitly specify the instance name by `-rn name'
- option. Or if the environment variable `WM_RES_NAME' is set, it
- will be used. If neither the option nor the environment variable
- is available, the command name will be used.
-
- F-4: I turned on visible-bell with (set visible-bell t), but the
- flashing area is limited to a quarter in the centre.
-
- This is a feature. It has changed since GNU Emacs 18.58.
-
- F-5: What is a `face'?
-
- It is a mechanism used by Emacs when running under the X Window
- System that attaches attributes like colours or fonts to the
- displayed strings. Mule 2.x uses this mechanism even for displaying
- the mode line in reverse video. `hilit19.el' and `font-lock.el' are
- examples of programs that use face well.
-
- F-6: What is `terminal face'? How can I use it?
-
- In the original emacs, faces are only available under the X Window
- System. In Mule, however, you can use face even outside X. We call
- this mechanism `terminal face'. (The biggest reason why we need a
- new name is to use it for a compile switch and configure switch.)
-
- To enable the terminal face facility, specify `--terminal-face' when
- you `configure'.
-
- F-7: Mule under X has wide line spaces. How can I shrink them?
-
- Include the following line in you X resource file:
-
- Emacs*lineSpace: 0+0
-
- Or invoke Mule with the `-lsp 0+0' command line option. The
- function `x-set-linespace', which was provided in Mule Ver.1, is not
- yet available in Mule Ver.2.
-
-
- EMACS LISP PACKAGES
-
- G-1: A lisp program `xxx', which worked in Mule 1.x, does not work any
- more. What should I do?
-
- Mule 1.x is based on GNU Emacs 18.59, but Mule 2.x is based on GNU
- Emacs 19. Many features have been modified. But you do not have to
- be pessimistic, as many programs have now been ported. A
- checklist is given below:
-
- 1. The distribution kit of Mule 2.x contains many lisp programs
- that were optional in the previous release. Check the standard
- lisp directory first, as these programs have already ported to
- Mule 2.x. If you find an alternative there, use it.
-
- 2. In some cases, the author of the program has already finished
- porting, even though the newer version is not included in the
- standard distribution. It is worth searching for the latest
- version with archie or another tool.
-
- 3. For example, shell-mode, which has many different improved
- programs, has become much more convenient in Mule 2.x. So the
- standard version would be an alternative.
-
- 4. You can port it yourself as a last resort.
-
- G-2: How can I display reserved words and comments in C programs in
- colour?
-
- Use `hilit19.el' or `font-lock.el'.
-
- G-3: How can I use `hilit19.el'?
-
- All you have to do is load the file. If you want to restrict the
- modes in which hilit19 is enabled, list the names of the modes in
- `hilit-mode-enable-list'. Also, you can specify the modes in which
- hilit19 is disabled like the following:
-
- (setq hilit-mode-enable-list
- '(not text-mode emacs-lisp-mode sgml-mode c-mode c++-mode)
-
- A fault of hilit19 is that you must hit `C-S-l' after having entered
- strings to reflect the effect. Because of this feature, you may
- want to use font-lock only in some specific modes.
-
- G-4: How can I use `font-lock.el'?
-
- Include lines like the following in your .emacs file for each mode
- in which you want to enable font-lock:
-
- (setq emacs-lisp-mode-hook '(lambda () (font-lock-mode 1)))
-
- By default, font-lock does not display in colour. If you want
- colour strings, specify the face as follows:
-
- (add-hook 'font-lock-mode-hook
- '(lambda ()
- (make-face 'keyword-face)
- (set-face-foreground 'keyword-face "tomato")
- (setq font-lock-keyword-face 'keyword-face)
-
- (make-face 'comment-face)
- (set-face-foreground 'comment-face "violetred4")
- (setq font-lock-comment-face 'comment-face)
-
- (make-face 'string-face)
- (set-face-foreground 'string-face "darkgreen")
- (setq font-lock-string-face 'string-face)
-
- (make-face 'function-face)
- (set-face-foreground 'function-face "blueviolet")
- (setq font-lock-function-name-face 'function-face)
-
- (make-face 'c-type-face)
- (set-face-foreground 'c-type-face "darkolivegreen")
- (setq font-lock-type-face 'c-type-face)
- ))
-
-
- There are improved versions of font-lock: face-lock can handle
- colours and grey scales; fast-lock works faster. These programs are
- available via anonymous FTP, and will be integrated into font-lock
- in the future version of emacs.
-
- G-5: I want a more convenient c-mode.
-
- Use cc-mode. It supports, for example, various indent styles and
- C++. It is more convenient in many respects.
-
- G-6: Are there any packages which automatically use RCS?
-
- `vc.el' is such a one, and can be used in Mule 2.x by default. If
- you find-file a file that is controlled by RCS, vc-mode is
- automatically turned on, and C-x C-q does `ci -u' or `co -l'
- depending on the situation. This is already practical enough, but
- if you want to know the detail, refer to info.
-
- G-7: How can I input codes like `ESC $ B $ "' directly from the
- keyboard?
-
- You can do it by using `keyboard.el'. Give *junet* to
- `set-keyboard-coding-system' and type what you want.
-
- G-8: Why does "M-!" (shell-command) not work when I load my lovely
- ange-ftp?
-
- Many functions, including `write-region' and `insert-file-contents'
- (which are modified in Mule), will be replaced by loading ange-ftp.
-
- In Mule, `shell-command' calls the new `write-region' and the new
- `insert-file-contents' with extra arguments, but another
- `write-region' introduced by ange-ftp cannot interpret these extra
- arguments, so the execution fails.
-
- To fix this problem, Masayuki KUWADA <kuwada@soliton.ee.uec.ac.jp>
- writes as follows:
-
- Add `&rest coding-system' at the end of parameters of the
- definition of `ange-ftp-write-region' and that of
- `ange-ftp-insert-file-contents' in `ange-ftp.el', and apply the
- following modifications. (The modified ange-ftp can be shared
- with Emacs/Nemacs.)
-
- [Caution] The following changes are for an ange-ftp whose version is
- RCS: !Header: ange-ftp.el,v 4.20 92/08/14 17:04:34 ange Exp !
- Other versions may require different modifications.
-
- In `ange-ftp-write-region', `ange-ftp-real-write-region' is
- called twice. Change these occurrences as follows:
-
- (ange-ftp-real-write-region start end temp nil visit)
- -->
- (apply 'ange-ftp-real-write-region start end temp nil
- visit coding-system)
-
- (ange-ftp-real-write-region start end filename append visit)
- -->
- (apply 'ange-ftp-real-write-region start end filename append
- visit coding-system)
-
- And in `ange-ftp-insert-file-contents',
- `ange-ftp-real-insert-file-contents' is called twice. Change
- these occurrences as follows:
-
- (ange-ftp-real-insert-file-contents temp visit)
- -->
- (apply 'ange-ftp-real-insert-file-contents
- temp visit
- coding-system)
-
- (ange-ftp-real-insert-file-contents filename visit)
- -->
- (apply 'ange-ftp-real-insert-file-contents
- filename visit coding-system)
-
-
- EMACS LISP PROGRAMMING
-
- H-1: Is Mule upwards-compatible with Nemacs/Emacs?
-
- Although Mule is based on GNU Emacs, they are slightly different at
- the level of emacs lisp. Mule is quite different from Nemacs.
-
- Enami TSUGUTOMO <enami@sys.ptg.sony.co.jp> points out the
- incompatibility between Mule and Nemacs/Emacs as follows:
-
- * Incompatibility caused by the existence of functions specific to
- each program
- * Incompatibility caused by the modifications to function
- definitions (number of arguments, etc.)
- * Incompatibility of byte compiled files caused by the difference
- of the internal representation between Mule and Nemacs. Their
- byte code is compatible, however. (isn't it? :-)
- * Incompatibility of compiled emacs lisp files caused by the
- representations of literals between Mule 1.x and Mule 2.x.
- * Incompatibility caused by the difference of versions of GNU
- Emacs they are based on.
-
- H-2: Give me some hints on porting a program for Mule 1.x to Mule 2.x.
-
- Pay attention to the following points:
-
- * `auto-fill-hook' has been renamed to `auto-fill-function'.
- * The structure of keymaps has been changes a little.
- * You'd better change obsolete variables:
- unread-command-char -> unread-command-event
-
- etc.
- ----------------------------------------------------------------------
- FAQ Part 2: Questions specific to each language
-
- ABOUT CHINESE
-
- CH-1: I succeeded in compiling Mule, but I cannot input Chinese.
-
- If you want to use foreign languages in Mule, you have to load the
- language specific files by specifying them in the site-init.el file.
- By default there is no site-init.el file, and this means that you
- can input only English.
-
- If you want to use Chinese, include the following line in the
- lisp/site-init.el file when you build Mule:
-
- (load "chinese")
-
- CH-2: How can I input Chinese?
-
- TAMAGO is used to input Chinese. By communicating with cserver
- of cWnn, TAMAGO provides a convenient input method for Chinese(GB).
- Type "M-x load-library RET chinese RET" and select PinYin mode to
- enable Pin-Yin input.
-
- Mule also provides quail-system. This system supports all of the
- conversion tables included in `cxterm/dict/tit'.
-
- CH-3: I want to use EUC for displaying Japanese, Chinese, Korean, EC,
- etc. simultaneously.
-
- It is impossible, because EUC for each language is the very same
- coding system. Use *junet* or *ctext* to display multi-lingual texts.
-
-
- CH-4: How can I input hanzi in incremental search?
-
- Load `isearch-ext.el' first, then you will be able to input
- characters other than ASCII in isearch (incremental search). You
- can invoke `TAMAGO' with `C-\' and `quail' with `C-]' to input
- foreign languages.
-
- CH-5: Mule fails to handle filenames which contain Chinese.
-
- You must specify `--mcpath' to `configure' when you compile Mule.
- You also have to specify what coding system will be used in
- filenames. Adding the following lines in `site-init.el' may
- help. (Note that *autoconv* cannot be specified).
-
- ;;; example: To use Chinese EUC for filenames
- (if (fboundp 'set-pathname-coding-system)
- (set-pathname-coding-system *euc-china*))
-
- CH-6: Can I read a newsgroup alt.chinese.text[.big5] in Chinese?
-
- In alt.chinese.text ~{ and ~} are used instead of 'ESC $ A' (which
- designates Chinese to G0) and 'ESC ( B' (which designates ASCII to
- G0) respectively. This is called Hz encoding. In Mule you can read
- this newsgroup in Chinese with the combination of `chinese.el',
- `gnusutil.el', and GNUS. Load `chinese.el' and `gnusutil.el' in
- this order, then invoke GNUS. `gnusutil.el' is included in the
- standard distribution kit of Mule Ver.2.
-
- ABOUT JAPANESE
-
- JP-1: What is the advantage of using Mule? Are there any cases in which
- Nemacs is better? If there are, what are they?
-
- Some advantages of using Mule are:
-
- * You can use not only English and Japanese, but also Chinese,
- Korean, and many other languages. You can use a mixture of these
- languages, too.
- * The specified regions in a buffer can have various display
- attributes. Unlike Nemacs, you can display these attributes on a
- normal terminal as long as the terminal supports such functions.
- * You can utilise a Japanese input system called "TAKANA" which
- gives better performance than the "TAMAGO" system of Nemacs.
- * Nemacs is based on GNU Emacs 18.55, while Mule Ver.2 is based on
- Emacs 19.
- * Mule has a powerful regular expression compiler.
-
- On the other hand, Mule is much bigger and more complicated than
- Nemacs. So if your computer facility is not powerful and the
- languages you want to use are limited to English and Japanese, it
- may be better to use Nemacs.
-
- Note that Mule is not fully compatible with Nemacs. Some of the
- applications developed for Nemacs do not work well with Mule.
-
- JP-2: Will Nemacs disappear?
-
- "Of course not" would be the ideal answer, but Nemacs will not be
- supported any more. This means that the final version of Nemacs is
- 3.3.2.
-
- JP-3: Are there any mailing lists for Mule in which discussion is done
- in Japanese?
-
- Use news (fj.editor.emacs) for discussion in Japanese. (See A-8.)
-
- JP-4: Does Mule has manuals written in Japanese?
-
- See also A-10. Mule has the following Japanese manuals and
- documents:
-
- * texinfo manual (in $MULE/man)
-
- mule-jp.texi texinfo manual for Mule
- egg-jp.texi texinfo manual for TAMAGO
- canna-jp.texi texinfo manual for canna
-
-
- * FAQ (in $MULE/etc/FAQ-Mule.jp)
-
- The document you are reading now is the English translation of this.
-
- * tutorial
-
- You can invoke the Japanese tutorial by C-h T (M-x
- help-with-tutorial-for-mule) in Mule.
-
- * documents under the `doc' directory
-
- The directory `$MULE/doc' contains explanations of functions and
- sample text. The files whose names end in `.jp' are written in
- Japanese.
-
- JP-5: I succeeded in compiling Mule, but I cannot input Japanese.
-
- If you want to use foreign languages in Mule, you have to load the
- language specific files by specifying them in the site-init.el file.
- By default there is no site-init.el file, and this means that you
- can only input English.
-
- If you want to use Japanese, include the following line in the
- lisp/site-init.el file when you build Mule:
-
- (load "japanese")
-
- (cf. B-7)
-
- JP-6: I cannot display Japanese in Mule under the X Window System.
-
- You must set the resource like the following. Do not forget to
- include the specification of `FontSet-xxx' that is set as
- `FontSetList'.
-
- ! Mule-2.0
- *FontSetList: 16,24
- *FontSet-16:\
- -*-fixed-medium-r-*--16-*-iso8859-1,\
- -*-fixed-medium-r-*--16-*-iso8859-2,\
- -*-fixed-medium-r-*--16-*-iso8859-3,\
- -*-fixed-medium-r-*--16-*-iso8859-4,\
- -*-fixed-medium-r-*--16-*-iso8859-5,\
- -*-fixed-medium-r-*--16-*-iso8859-7,\
- -*-fixed-medium-r-*--16-*-iso8859-8,\
- -*-fixed-medium-r-*--16-*-iso8859-9,\
- -*-fixed-medium-r-*--16-*-viscii1.1-1,\
- -*-fixed-medium-r-*--16-*-mulearabic-0,\
- -*-fixed-medium-r-*--16-*-mulearabic-1,\
- -*-fixed-medium-r-*--16-*-mulearabic-2,\
- -*-fixed-medium-r-*--16-*-muleipa-1,\
- -*-fixed-medium-r-*--16-*-jisx0201.1976-*,\
- -*-fixed-medium-r-*--16-*-jisx0208.1983-*,\
- -*-fixed-medium-r-*--16-*-jisx0212.1990-*,\
- -*-medium-r-*--16-*-gb2312.1980-*,\
- -*-mincho-medium-r-*--16-*-ksc5601.1987-*,\
- -*-fixed-medium-r-*--16-*-tis620.2529-1
- *FontSet-24:\
- -*-fixed-medium-r-*--24-*-iso8859-1,\
- -*-fixed-medium-r-*--24-*-iso8859-2,\
- -*-fixed-medium-r-*--24-*-iso8859-3,\
- -*-fixed-medium-r-*--24-*-iso8859-4,\
- -*-fixed-medium-r-*--24-*-iso8859-5,\
- -*-fixed-medium-r-*--24-*-iso8859-7,\
- -*-fixed-medium-r-*--24-*-iso8859-8,\
- -*-fixed-medium-r-*--24-*-iso8859-9,\
- -*-fixed-medium-r-*--24-*-viscii1.1-1,\
- -*-fixed-medium-r-*--24-*-mulearabic-0,\
- -*-fixed-medium-r-*--24-*-mulearabic-1,\
- -*-fixed-medium-r-*--24-*-mulearabic-2,\
- -*-fixed-medium-r-*--24-*-muleipa-1,\
- -*-fixed-medium-r-*--24-*-jisx0201.1976-*,\
- -*-fixed-medium-r-*--24-*-jisx0208.1983-*,\
- -*-fixed-medium-r-*--24-*-jisx0212.1990-*,\
- -*-medium-r-*--24-*-gb2312.1980-*,\
- -*-mincho-medium-r-*--24-*-ksc5601.1987-*,\
- -*-fixed-medium-r-*--24-*-tis620.2529-1
-
- JP-7: How can I input Japanese?
-
- The following Japanese input systems are prepared:
-
- * TAMAGO (aka EGG) version TAKANA
- * sj3-egg
- * Canna
-
- All of them offer a Japanese input facility using a romaji-kanji
- conversion method, which utilises a network conversion server. For
- details, refer to the manuals of each system. These systems must be
- set up when building Mule.
-
- * T-CODE input using quail
-
- This requires no conversion server. After loading
- `lisp/quail/tcode.el', you can toggle between ASCII and T-CODE mode
- by C-]. (CAUTION: `quail/tcode.el' will soon be replaced with
- `tc-mule.el'.)
-
- Japanese can be input with `SKK', too. SKK requires no special
- settings when Mule is built. It can be used both as a closed system
- in Mule and as a system which communicates with a dictionary server.
- For Mule Ver.2, use skk7.18.1 or later version.
-
- JP-8: What is TAMAGO (aka EGG) ?
-
- TAMAGO is a system which offers a Japanese/Chinese environment
- utilising the network-wide conversion servers (jserver/cserver) of
- Wnn. Sometimes TAMAGO is called EGG, which is the translation of
- `TAMAGO' in English.
-
- TAMAGO consists of three parts: 1) a input string conversion system
- (or romaji-kana conversion system), 2) a kana-kanji (and
- pinyin-hanzi) conversion system, and 3) a Japanese editing system.
- The input string conversion system can be used not only for hiragana
- and katakana but also for pinyin, hangul, and other languages.
-
- JP-9: What is TAKANA?
-
- Toshiaki SHINGU <shingu@cpr.canon.co.jp> writes:
-
- It is a version of TAMAGO made for the Wnn V4 library. The name
- stands for "TAmagoyo KAshikoku NA-re (EGG, be clever)". In
- addition to the conventional TAMAGO, it has the following
- features:
-
- * dai-bunsetsu / sho-bunsetsu conversion
- * reverse conversion (kanji to kana)
- * word registration according to the POS of V4 server (e.g.
- proper noun)
- * enabling / disabling a word without deleting it from the
- dictionary
- * setting words frequency
- * setting comments in the dictionary
-
- TAKANA is not an alternative to TAMAGO but rather an enhancement.
- TAMAGO will be integrated into a TAKANA version in the future.
- Older versions (Wnn V3, and Wnn V4 for V3 library) will not be
- supported.
-
- JP-10: What is sj3-egg?
-
- It is another version of TAMAGO which communicates with sj3serv
- included in the contrib part of X11R5/R6. It provides very high
- conversion efficiency.
-
- JP-11: What is Canna?
-
- It is a kana-kanji conversion system which follows the server-client
- method. In Mule, it provides almost the same user interface as
- TAMAGO but the conversion server of Canna is used instead.
-
- JP-12: What is SKK?
-
- Masahiko SATO <masahiko@sato.riec.tohoku.ac.jp> writes:
-
- SKK is a system which provides a fast and highly efficient
- Japanese input environment. It allows the user to input the
- intended sentence easily and "as is". SKK is fast because it
- performs the conversion without any grammatical analysis. The
- user can let it know his/her intention by specifying the starting
- point of OKURIGANA, and this makes the conversion efficiency high.
- When registering words in the dictionary it is not necessary for
- the user to give information about part of speech, etc., and this
- makes it easy to augment the dictionary. You can learn the usage
- of SKK in a short time with its tutorial program.
-
- JP-13: How can I input Japanese (or Korean/Chinese) characters whose
- shape I am aware of but whose reading I don't know?
-
- TAMAGO supports both BUSYU input (M-x busyu-input) and KAKUSUU input
- (M-x kakusuu-input). These functions make it possible to input a
- kanji by selecting its busyu or kakusuu from a menu displayed in the
- minibuffer.
-
- JP-14: I am not able to cut & paste using mouse in kterm.
-
- This happens when 1)Mule is running inside of a kterm, and 2)
- keyboard-coding-system of Mule is incompatible with kanji-mode
- of that kterm. Make these two compatible.
-
- JP-15: Can I input kanji by kinput2?
-
- You can input kanji by kinput2 when Mule is running in a kterm. Do
- not forget to set keyboard-coding-system of Mule compatible with
- kanji-mode of that kterm.
-
- JP-16: I set (setq keyboard-coding-system *euc-japan*), but it does not
- work well.
-
- Do not use `setq' to bind a value to `keyboard-coding-system'. Use
- the function `set-keyboard-coding-system'. This comment also
- applies to `display-coding-system', `file-coding-system', etc.
-
- JP-17: I want to use EUC for displaying Japanese, Chinese, Korean, EC,
- etc. simultaneously.
-
- This is impossible, because EUC for each language is the very same
- coding system. Use *junet* or *ctext* to display multi-lingual texts.
-
- JP-18: How can I input kanji in incremental search?
-
- Type C-k to input kanji in incremental search (isearch). In this
- mode you can type a string in the minibuffer, so Japanese/Chinese
- can also be input by C-\. When the string has been input, hit RET
- to restart incremental search.
-
- JP-19: How can I input single-width katakana (JIS X0201 katakana)?
-
- Ken Shibata <shibata@sgi.co.jp> writes:
-
- To input single-width katakana, Mule provides two emacs lisp
- files, i.e. `jisx0201.el' and `its/han-kata.el'. The file
- `jisx0201.el' defines `fence-hankaku-katakana' (bound to `M-x' in
- fence-mode), which converts all double-width katakana and hiragana
- in fence-mode at once. The file `its/han-kata.el' defines
- `its:select-hankaku-katakana' (bound to `M-C-x' in fence-mode;
- `C-x C-k x' otherwise), which converts roma-ji into single-width
- katakana.
-
- Furthermore, `jisx0201.el' defines `hankaku-katakana-region' and
- `zenkaku-katakana-region' (or -paragraph/-sentence/-word). These
- functions convert strings all at once. The file `its/han-kata.el'
- loads `jisx0201.el', so you can load either of them in your .emacs
- file. But note that loading these files takes a fairly long time.
- If you often input single-width katakana, you should pre-load them
- in site-init.el.
-
- To summarise,
-
- 1) In fence-mode,
- * type M-x to convert kana to single-width.
- * type M-h to revert single-width katakana to double-width
- hiragana.
- * type M-k to revert single-width katakana to double-width
- katakana.
-
- 2) Outside fence-mode,
- * type C-x C-k x to make typed roma-ji be converted to
- single-width katakana.
- * type C-x C-k h to make typed roma-ji be converted to
- double-width hiragana.
-
- 3) In fence-mode,
- * type M-C-x to make typed roma-ji be converted to single-width
- katakana.
- * type M-C-h to make typed roma-ji be converted to double-width
- hiragana.
-
- (If you have exchanged BS and DEL by `bobcat.el' or something like
- that, and are using ESC key to input Meta, then M-C-h means ESC
- DEL.)
-
- JP-20: How can I input Japanese hiragana "$B$s(B" by typing "nn" when I am
- using Mule + Egg?
-
- Include the following line in your .emacs file.
-
- (setq enable-double-n-syntax t)
-
- JP-21: Mule fails to handle filenames which contain Japanese.
-
- You must specify `--mcpath' to `configure' when you compile Mule.
- You also have to specify what coding system will be used in
- filenames. Adding the following lines in `site-init.el' may
- help. (Note that *autoconv* cannot be specified).
-
- ;;; example: To use Japanese EUC for filenames
- (if (fboundp 'set-pathname-coding-system)
- (set-pathname-coding-system *euc-japan*))
-
- JP-22: How can I use Wnn and Canna simultaneously?
-
- Sakai Kiyotaka <ksakai@mtl.t.u-tokyo.ac.jp> writes:
-
- First, define both `EGG' and `CANNA' in `mconfig.h' when you
- compile Mule.
-
- Second, if you have set up to use Canna, your should have
- something like the following in your .emacs file:
-
- (if (and (boundp 'CANNA) CANNA)
- (progn
- (load-library "canna")
- (canna)
- ... ))
-
- Change the above like this:
-
- (if (and (boundp 'CANNA) CANNA)
- (progn
- (setq canna-server "mercury")
- (cond ((boundp 'egg-version)
- (require 'can-n-egg)
- (can-n-egg))
- (t
- (require 'canna)
- (canna)))
- ... ))
-
- Now you can activate Wnn with `\C-\' and Canna with `\C-o'.
-
- JP-23: Is Mule upwards-compatible with Nemacs/Emacs?
-
- Mule is quite different from Nemacs at the level of emacs lisp.
-
- Enami TSUGUTOMO <enami@sys.ptg.sony.co.jp> points out the
- incompatibility between Mule and Nemacs/Emacs as follows:
-
- * Incompatibility caused by the existence of functions specific to
- each program
- * Incompatibility caused by the modification of function
- definitions (number of arguments, etc.)
- * Incompatibility of byte compiled files caused by the difference
- of the internal representation between Mule and Nemacs. Their
- byte code is compatible, however. (isn't it? :-)
- * Incompatibility caused by the difference of versions of GNU
- Emacs they are based on. (only current-column, maybe.)
-
- JP-24: Can Nemacs and Mule share the same .emacs file?
-
- Mule is not compatible with Nemacs. Sometimes a `.emacs' file made
- for Nemacs causes trouble when used for Mule.
-
- To share the same .emacs file, you have to divide it into two parts;
- one for Mule and the other for Nemacs:
-
- (if (boundp 'MULE)
- (functions for Mule))
- (if (boundp 'NEMACS)
- (functions for Nemacs))
-
- There is a sample shared `.emacs' file in the texinfo manual of
- Mule. It may help you.
-
- Note that some of the byte-compiled files are NOT sharable. Concerning
- about this point, Enami Tsugutomo <enami@sys.ptg.sony.co.jp> writes:
-
- You should prepare two different files for Mule and Nemacs if you
- want to byte-compile those files.
-
- As Mule and Nemacs adopt different internal representations of
- kanji characters, you must re-byte compile if the files include
- kanji characters.
-
- JP-25: Some functions work fine with Nemacs, but they show the message
- "Symbol's function definition is void: define-program-kanji-code" and
- abort. How can I fix this?
-
- Atsushi Furuta <furuta@srarc2.sra.co.jp> writes:
-
- `define-program-kanji-code' is specific to Nemacs, so you have to
- modify it to make such functions run on Mule.
- `define-program-coding-system' is the counterpart in Mule. For
- example,
-
- (define-program-kanji-code nil ".*inc.*" 2)
-
- should be replaced by
-
- (define-program-coding-system nil ".*inc.*" *junet*)
-
- Many functions named `kanji-code-xxx' before have been renamed to
- `coding-system-xxx' in Mule. The variable `kanji-flag' has been
- renamed to `mc-flag' in Mule.
-
- Fortunately, a package has been written to make Nemacs oriented
- codes work in Mule. Ken'ichi Handa <handa@etl.go.jp> writes:
-
- From: handa@etlken.etl.go.jp (Kenichi Handa)
- Newsgroups: fj.editor.mule,fj.editor.emacs
- Subject: nemacs -> mule
- Message-ID: <HANDA.93Oct15215300@etlken.etl.go.jp>
- Date: 15 Oct 93 21:53:00 GMT
-
- With the help of members of our mailing list, I have written a
- simple package which makes the shift from Nemacs to Mule easier.
-
- First, install the two elisp files below in your load-path. Then
- modify your .emacs file as follows. Your configuration for Mule
- will be the same as that for Nemacs:
-
- (load-library "nemacs-pre")
- ... your original .emacs comes here ...
- (load-library "nemacs-post")
-
- The above modification, of course, does not harm the usage of
- Nemacs.
-
- This package is not yet complete, so please send your requests
- like "how can I modify my Nemacs oriented configuration so and so
- for Mule?"
-
- Both `nemacs-pre.el' and `nemacs-post.el' are available via
- anonymous FTP from etlport.etl.go.jp:/pub/mule/contrib/lisp.
-
- JP-26: How can I use Supercite in Japanese environment?
-
- For those who use only English, the configuration shown in E-2 above
- suffices. But if you want to use Japanese, you have to change your
- `sc-cite-regexp'.
-
- Yoichi HIROSE <yoichi@esasd.ksp.fujixerox.co.jp> writes:
-
- Some categories match Japanese strings in Nemacs but do not in
- Mule. You do not have to worry if you have not used a category to
- specify a regexp.
-
- See the following regexp. The regexp is very short in Mule, while
- it was quite long in Nemacs. For more information, see the part
- of char-category in info.
-
- Anyway you have to change sc-cite-regexp as follows if you want to
- use Japanese.
-
- An example of how to set sc-cite-regexp:
- (if (boundp 'MULE)
- (setq sc-cite-regexp "\\s *\\([a-zA-Z0-9_]\\|\\cj\\)*>+\\s *")
- (setq sc-cite-regexp "\\s *\\([a-zA-Z0-9_]\\|\\cc\\|\\cC\\|\\ch\\|\\cH\\|\\ck\\|\\cK\\|\\ca\\|\\cg\\|\\cr\\|\\cu\\)*>+\\s *"))
-
- JP-27: Why dired does not work?
-
- Dired scans the output of ls, but the output should not contain
- Japanese.
-
- Akira Kon <kon@quincy.d1.bs2.mt.nec.co.jp> writes:
-
- My machine is a SVR4 and ls gives an output like the following
- when LANG is set to Japanese.
-
- -rw-rw-r-- 1 kon com 1002 10$B7n(B30$BF|(B 00$B;~(B22$BJ,(B .bashrc
- -rw-r--r-- 1 kon com 26387 11$B7n(B18$BF|(B 10$B;~(B06$BJ,(B .emacs
-
- (The dates are in Japanese, you know.)
-
- But `dired.el' has a fragment of codes like:
-
- (defun dired-get-filename (&optional localp no-error-if-not-filep)
- (...deleted...)
- (beginning-of-line)
- (if (re-search-forward
- "\\(Jan\\|Feb\\|Mar\\|Apr\\|May\\|Jun\\|Jul\\|Aug\\|Sep\\|Oct\\|Nov\\|Dec\\)[ ]+[0-9]+"
- eol t)
- (progn (skip-chars-forward " ")
-
- and this means, in short, that dired does not accept the output of
- Japanese `ls -l'.
-
- I believe that the following modification works for dired, but I
- am afraid that there are other programs that scan the output of
- UNIX commands.
-
- --- dired.el.orig Mon Nov 22 23:32:13 1993
- +++ dired.el Mon Nov 22 23:33:03 1993
- @@ -42,10 +42,13 @@
- (erase-buffer)
- (setq dirname (expand-file-name dirname))
- (if (file-directory-p dirname)
- - (call-process "ls" nil buffer nil
- - dired-listing-switches dirname)
- + (call-process "env" nil buffer nil
- + "LC_MESSAGES=C" "LC_DATE=C" "LANG=C"
- + "ls" dired-listing-switches dirname)
- (let ((default-directory (file-name-directory dirname)))
- - (call-process shell-file-name nil buffer nil
- + (call-process "env" nil buffer nil
- + "LC_MESSAGES=C" "LC_DATE=C" "LANG=C"
- + shell-file-name
- shell-command-option
- (concat "ls " dired-listing-switches " "
- (file-name-nondirectory dirname)))))
-
- JP-28: I cannot read the string that follows the single width
- `KONNICHIWA' in the file `$MULE/doc/demo'.
-
- Azuma OKAMOTO <lfo@sayori.dais.is.tohoku.ac.jp> writes:
-
- That part contains `ESC $ ( D', so you need a JISX0212 font to
- display the characters.
-
- If you have not installed that font, you cannot read it, of
- course. :-)
-
- JP-29: Are there any free JIS X0212 (JIS supplemental kanji) fonts?
-
- Youn can find in:
-
- etlport.etl.go.jp:/pub/mule/fonts/Japanese.tar.gz
-
- Besides the above Japanese.tar.gz, another JISX0212.1990 font was
- posted to fj.sources:
-
- From: yasuoka@kudpc.kyoto-u.ac.jp (Koichi Yasuoka)
- Newsgroups: fj.sources
- Subject: 16x16 JIS Supplementary Kanji Font (1/6)
- Date: 28 Jul 1994 00:06:12 +0900
- Organization: Data Processing Center, Kyoto University, Kyoto, Japan.
- Message-ID: <315t54$et5@kudpc.kudpc.kyoto-u.ac.jp>
-
- This posting is followed by some patches, so you'd better apply them.
-
-
- HANDLING LATIN CHARACTERS
-
- LT-1: How can I input ISO 8859 characters?
-
- Mule supports all the character sets from Latin-1 (ISO 8859-1) to
- Latin-5 (ISO 8859-9). The quail system is used to input these
- characters from an ordinary ASCII keyboard.
-
- Following five files are provided to input ISO 8859 characters:
-
- * quail/latin.el : languages written in Latin alphabets (for slow typists)
-
- This file is for naive users. Most of the accented letters are
- input by composing two characters. For example, you will get an ,Ai(B
- (e with acute accent) by typing an e followed by a ' (single
- quote).
-
- LANGUAGE PACKAGE NAME
- --------------------------------
- Danish danish
- Esperanto esperanto
- Finnish finnish
- French french
- German german
- Icelandic icelandic
- Italian italian
- Norwegian norwegian
- Spanish spanish
- Swedish swedish
- Turkish turkish
- British british
- ISO 8859-1 latin-1
- ISO 8859-2 latin-2
- ISO 8859-3 latin-3
- ISO 8859-4 latin-4
- ISO 8859-9 latin-5
-
-
- * quail/ltn.el : languages written in Latin alphabets (for quick typists)
-
- This file was made for those who find quail/latin.el is too awkward.
- The principle of this file is "the less strokes, the better". Most
- of the special letters proper to each language are allocated to
- somewhere so that you can type them with a single stroke. You can
- type very quickly once you learn the layout by heart.
-
- LANGUAGE PACKAGE NAME
- -----------------------------------------------------------
- Danish dnsh
- Finnish fnnsh
- French frnch, azerty
- German grmn
- Icelandic iclndc
- Italian itln
- Norwegian nrwgn
- Spanish spnsh
- Swedish swdsh
-
-
- * quail/cyrillic.el : languages written in Cyrillic alphabets
-
- LANGUAGES PACKAGE NAME NOTE
- -----------------------------------------------------------------
- Russian jcuken standard layout for Russian
- jis-russian same as jcuken, but uses
- JIS encoding
- Macedonian macedonian JUS.I.K1.004
- Serbian serbian JUS.I.K1.005
- Byelorussian byelorussian derived from JUS.I.K1
- Ukrainian ukrainian derived from JUS.I.K1
- ISO 8859-5 yawerty based on Roman transcription
-
-
- * quail/greek.el : for Greek
-
- LANGUAGE PACKAGE NAME NOTE
- -----------------------------------------------------------------
- Greek greek
- jis-greek same as greek, but uses
- JIS encoding
-
-
- * quail/hebrew.el : for Hebrew
-
- LANGUAGE PACKAGE NAME
- --------------------------------
- Hebrew hebrew
-
-
- After having loaded the appropriate file(s), you can toggle quail-
- minor-mode with "C-]". In the quail mode you can select a package
- for a particular language either typing "M-s" or evaluating
- (quail-use-package "package-name"). Typing "M-z" shows a brief
- help.
-
- Examples:
-
- 1) If you are new to German and want to type German texts, include
- the following two lines in your .emacs.
-
- (load "quail/latin")
- (quail-use-package "quail-german")
-
- 2) If you want to use the azerty layout for French, include the
- following two lines in your .emacs.
-
- (load "quail/ltn")
- (quail-use-package "azerty")
-
- LT-2: How can I display Latin-1 characters on a character terminal?
-
- TAKAHASHI Naoto <ntakahas@etl.go.jp> writes:
-
- You have to set `display-coding-system' to *ctext* to display
- Latin-1 characters in Mule running on a character terminal.
- This can be done either 1) by adding a line which looks like:
-
- (setq display-coding-system *ctext*)
-
- in your .emacs file, or 2) by answering *ctext* to the prompt
- "Display-coding-system:" which is shown when you type "M-x
- set-display-coding-system".
-
- Even under the X Window System, you have to run one of the
- above procedures if you invoke Mule with -nw option.
-
- In either case, your character terminal or terminal emulator should
- be able to support Latin-1 characters.
-